package com.mhkj.fruit.key.entity;

import javax.persistence.Entity;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Transient;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.mhkj.base.fruitType.entity.FruitType;
import com.mhkj.execute.feedback.entity.PlanFeedBack;
import com.mhkj.revise.plan.entity.PlanNode;
import com.mics.core.common.validate.annotation.Validate;
import com.mics.core.system.base.entity.BaseDomain;
import com.mics.core.system.rbac.entity.Dictionary;

 

/**
 *  节点成果档案
 * @author wt
 */
@Entity
@Table(name="t_key_fruit_archives")
@Validate
@JsonIgnoreProperties(value = { "hibernateLazyInitializer", "fruitType","planNode","keyType","planFeedBack"})
public class KeyFruitArchives   extends BaseDomain {

	/**
	 * 序号
	 */
	private static final long serialVersionUID = -1150030615532026332L;
	
	
	/**
	 *成果类别(成果名称:fruitType.nodePrepare.nodeName)
	 */
	@ManyToOne
	@JoinColumn(name="fruit_type_id")
	private FruitType fruitType;
	
	
	/**
	 *节点类型(关键节点,专项,主项)
	 */
	@ManyToOne
	@JoinColumn(name="key_type_id")
	private Dictionary keyType;
 
	/**
	 *节点类型(关键节点,专项,主项)
	 */
	@Transient
	private String code;
	
	
	/**
	 *计划节点
	 */
	@ManyToOne
	@JoinColumn(name="plan_node_id")
	private PlanNode planNode;
	

	/**
	 *计划进度
	 */
	@ManyToOne
	@JoinColumn(name="plan_feed_back_id")
	private PlanFeedBack planFeedBack;

	
	// 计划名称,业务板块,成果类别,成果名称,提交人,工作成果id;
	
	
	@Transient
	private String planName;
	
	@Transient
	private String fruitTypeName;
	 
	@Transient
	private String planNodeName;
	 
	@Transient
	private String business;
	
	@Transient
	private String authorName;
	
	@Transient
	private Long planNodeId;
	
	@Transient
	private Long itemId;
	
	@Transient
	private Long month;
	
	
 

	public Long getPlanNodeId() {
		return planNodeId;
	}

	public void setPlanNodeId(Long planNodeId) {
		this.planNodeId = planNodeId;
	}

	public Long getItemId() {
		return itemId;
	}

	public void setItemId(Long itemId) {
		this.itemId = itemId;
	}

	public Long getMonth() {
		return month;
	}

	public void setMonth(Long month) {
		this.month = month;
	}

	public String getPlanName() {
		return planName;
	}

	public void setPlanName(String planName) {
		this.planName = planName;
	}

	public String getFruitTypeName() {
		return fruitTypeName;
	}

	public void setFruitTypeName(String fruitTypeName) {
		this.fruitTypeName = fruitTypeName;
	}

	public String getBusiness() {
		return business;
	}

	public void setBusiness(String business) {
		this.business = business;
	}

 
	public String getAuthorName() {
		return authorName;
	}

	public void setAuthorName(String authorName) {
		this.authorName = authorName;
	}

	 
	public PlanNode getPlanNode() {
		return planNode;
	}

	public void setPlanNode(PlanNode planNode) {
		this.planNode = planNode;
	}

	public FruitType getFruitType() {
		return fruitType;
	}

	public void setFruitType(FruitType fruitType) {
		this.fruitType = fruitType;
	}

	

	public String getPlanNodeName() {
		return planNodeName;
	}

	public void setPlanNodeName(String planNodeName) {
		this.planNodeName = planNodeName;
	}

	public Dictionary getKeyType() {
		return keyType;
	}

	public void setKeyType(Dictionary keyType) {
		this.keyType = keyType;
	}

	public String getCode() {
		return code;
	}

	public void setCode(String code) {
		this.code = code;
	}

	public PlanFeedBack getPlanFeedBack() {
		return planFeedBack;
	}

	public void setPlanFeedBack(PlanFeedBack planFeedBack) {
		this.planFeedBack = planFeedBack;
	}
	
}